package com.ytjj.qmyx.supplychain.common.model.dto;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.math.BigDecimal;

/**
 * 
 * 
 **/
@Data
public class ProductDto {
    /**
     * 商品ID
     */
    private Integer id;

    /**
     * 一级分类id
     */
    private Integer topCategoryId;

    /**
     * 二级分类id
     */
    private Integer categoryId;

    /**
     * 三级分类id
     */
    private Integer bottomCategoryId;

    @Size(min = 1, max = 40,message = "商品名称不能大于40字！")
//    @NotNull(message = "商品名称不能为空！")
    private String productName;

    @Size(max = 25,message = "商品描述不能大于25字！")
//    @NotNull(message = "商品描述不能为空！")
    private String descr;

    /**
     * 品牌
     */
    private String brand;

    /**
     * 品牌Id
     */
    private Integer brandId;

    /**
     * 款号
     */
    private String typeno;

    @Size(max = 128,message = "商品主图信息错误！")
//    @NotNull(message = "商品主图不能为空！")
    @NotBlank
    private String productImg;


//    @NotNull(message = "原价不能为空！")
    private BigDecimal originalPrice;
//
//    @NotNull(message = "建议购买价不能为空！")
    private BigDecimal salePrice;

//    @NotNull(message = "成本价格不能为空！")
    private BigDecimal costPrice;

//    @NotNull(message = "库存预警")
    private Integer stockWarning;

//    @NotNull(message = "测评库存")
    private Integer stockEvaluation;

    /**
     * 质检报告逗号隔开
     */
    private String qualityReport;

    /**
     * 附件url
     */
    private String zipUrl;

    /**
     * 审核状态
     */
    private Integer auditStatus;

    /**
     * 是否控价 2-否 1-是
     */
    private Integer controlPrice;

    /**
     * 库存总量
     */
    private Integer stock;

    /**
     * 店家id
     */
    private Integer bankerId;

    /**
     * 店家名称
     */
    private String bankerName;

    /**
     * 货源 供应商bankerName
     */
    private String warehouse;

    /**
     * 货源名称 商品名称
     */
    private String warehouseName;

    /**
     * 是否0元商品 0-否 1-是
     */
    private Integer isZeroProduct;

    /**
     * 是否完善所有信息 0->否 1->是
     */
    private Integer stepFlow = 1;

    /**
     * sku属性json列表
     */
    private String attributeJson;

    /**
     * 商品标识
     */
    private String productNo;

    private String volumeStr = "5674";

    /**
     * 供应商退货地址表id
     */
//    private Integer bankerStoreAddressId;
    private Integer addressId;//地址id

    /**
     * 商品类型 1国内 2国外
     */
    private Integer isExit;

    /**
     * 邮寄类型（mailType）：一般贸易，直邮，保税
     */
    private String mailType;

    /**
     * 邮寄备注：mailNote
     */
    private String mailNote;

    private BigDecimal supplyPrice;
    /**
     * 控价原因
     */
    private String controlReason;

    /**
     * 运费模板id
     */
    private Integer freightId;

    /**
     * 商品详情图
     */
    private String infoImg;

    /**
     * customs_no  海关商品编号
     */
    private String customsNo;

    /**
     *country_id  所属国家编码
     */
    private String countryCode;
    /**
     * 单位编码
     */
    private String unitCode;
    /**
     * 跨境电商综合税率
     */
    private BigDecimal consolidatedTaxRate;
    /**
     * 发货仓名称
     */
    private String entrepotName;
}
